package com.kxmall.huishou.service;

import com.kxmall.categorize.domain.vo.HsWasteCategorizeVo;
import com.kxmall.huishou.domain.HsWasteSite;
import com.kxmall.huishou.domain.vo.HsWasteSiteVo;
import com.kxmall.huishou.domain.bo.HsWasteSiteBo;
import com.kxmall.common.core.page.TableDataInfo;
import com.kxmall.common.core.domain.PageQuery;

import java.math.BigDecimal;
import java.util.Collection;
import java.util.List;

/**
 * 废品回收站信息Service接口
 *
 * @author kxmall
 * @date 2023-11-23
 */
public interface IHsWasteSiteService {

    /**
     * 查询废品回收站信息
     */
    HsWasteSiteVo queryById(Long id);

    /**
     * 查询废品回收站信息列表
     */
    TableDataInfo<HsWasteSiteVo> queryPageList(HsWasteSiteBo bo, PageQuery pageQuery);

    /**
     * 查询废品回收站信息列表
     */
    List<HsWasteSiteVo> queryList(HsWasteSiteBo bo);

    /**
     * 新增废品回收站信息
     */
    Boolean insertByBo(HsWasteSiteBo bo);

    /**
     * 修改废品回收站信息
     */
    Boolean updateByBo(HsWasteSiteBo bo);

    /**
     * 校验并批量删除废品回收站信息信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);

    List<HsWasteSiteVo> queryPageListByLatAndLon(HsWasteSiteBo bo, PageQuery pageQuery);

    HsWasteSiteVo queryByIdAndlatAndLon(BigDecimal longitude, BigDecimal latitude, Long id);
}
